package com.sfy.core.example.registry;


import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;

/**
 * 实现一个本地注册器：用于记录不同的请求
 */
public class LocalRegistry {

    /**
     * 注册消息存储，key 为服务名称、value 为服务的实现类
     */
    private static final Map<String,Class<?>> map = new ConcurrentHashMap<>();


    /**
     * 注册服务
     * @param serviceName
     * @param clazz
     */
    public static void registry(String serviceName, Class<?> clazz) {
        map.put(serviceName, clazz);
    }

    /**
     * 删除服务
     * @param serviceName
     */
    public static void remove(String serviceName) {
        map.remove(serviceName);
    }

    /**
     * 获取服务
     * @param serviceName
     * @return
     */
    public static Class<?> get(String serviceName) {
        return map.get(serviceName);
    }
}
